未来的软件实现方式,由什么样的体系来定义?
权利:作者 詹毅,中国·上海 执业律师,华东政法大学兼职教授,微信ZhanyiAttorney,邮箱zy@koforder.com。
声明:传播本文时,请于文首呈现以上权利信息。
1 定义未来的几个说法
信息科技产业,越发地精彩[1]。随之而来的,便是某某技术“定义未来”的说法:
物联网:未来已来[2]。
区块链定义未来[3];大数据的衰落及区块链经济的崛起[4]。
大数据与智能革命重新定义未来[5]。
人工智能时代:人机共生下财富、工作与思维的大未来[6]。
对于这么多的“未来”......迷茫?困惑?我们仔细想一想,会发现:大数据也好,人工智能也好,都要靠网路、算法来实现。这些实现的具体执行,就是运行由代码构成的软件。
没有软件来执行数据的采集、去噪、挖掘、分析、预测,数据海量数据或结构化数据的处理就是空谈。阿里巴巴的大数据产品:“生意参谋”,就是零售电商大数据软件。
该软件为天猫商户提供“行业直播”“搜索词分析”“买家人群画像”“搜索人群画像”等大数据统计分析服务[7]。这种大数据产品,可以帮助商家更精准地判断消费行为,更有效地作出营销策略。
当然,大数据的应用,几乎遍及所有行业,包括社交网络、制造、金融、卫生、交通,由相应领域的软件来实现。但大数据或大数据软件只是一个技术产品的量级,不可能定义未来。
人工智能同样高度依赖软件。自然语言处理、图像识别也好,神经网络也好,均需要设计相应的算法,具体由软件来执行。例如聊天机器人,主要就是siri等能通过聊天app、聊天窗口或语音唤醒 app 进行交流,用来解决客户问题的计算机软件[8]。
当下知名的家用人工智能产品,有Google Home,Amazon Alexa。但不管是家用,还是产业用途,人工智能与大数据一样,也属于具体技术的量级,不可能对未来下定义。
而物联网、区块链,则属于一个或几个应用场景的整体解决方案,包括商业的方法,管理科学,传感、生物、密码等已有技术,这个里面IT应用是基础,软件仍然是核心。
但区块链在没有解决交易效率、运算成本等问题之前,商业上的应用还有待观察。作为一个或几个领域的解决方案产品,显然也无法承担起定义未来的使命。
总之,“软件正在吞噬世界”[9],没有人来写源代码(Source Code),无论物联网、大数据,还是人工智能,不仅无法真正地实现,而且这些技术也不可能孤立地存在,只有通过软件,才能有机地产生效能。
那么,软件定义未来?在产业、办公、文娱等一切都在信息化,都由软件实现的今天,认为软件定义未来,等于说数据分析软件、旅游查询软件、机器人软件、办公软件、网络游戏软件决定未来,或者也可以说操作系统决定软件,也就是所有的软件决定未来,这等于什么也没有说。
未来的各领域固然需要软件的运行(当然,软件的语言、编程、运行的方式也在不断进化),但能够定义未来的,不会是某项具体的软件技术,或者场景的应用解决方案,而只有达到体系的量级才行。这样问题就转换为,未来的软件实现方式,由什么样的体系来定义?
答案是开源法,即开源法定义未来。
2 为什么是开源法
并没有一部法律叫做《开源法》,开源法是指能够定义未来的一个体系(这个量级应该够了)。这个体系以法律为运行的基础。因为不管是技术的未来,还是生活的未来,秩序或规则仍将是文明高质量存续的条件。
为什么是开源法来定义未来?
这要从软件的WinTel或者PC时代说起。Win即微软公司大名鼎鼎的操作系统Windows,是软件在脱离硬件,并开始在人类社会独立发出影响力以来的标志性产品。
Windows在微软公司内开发完成,封闭源代码,一份份地向用户出售目标码的复制件,收取权利金(版权授权费),在20世纪90年代成为全球PC用户的主流操作系统,代表了当时的软件生态(也可以说始于此前80年代的MS-DOS,这个由计算机软件史学家去定论),赚钱赚到全球市值第一并影响至今。
这一生态下,Windows模式的软件大行其道,成为软件实现方式的主流,源代码作为版权财产(中国《著作权法》第五十七条规定,本法所称的著作权即版权。比较各国的版权法,版权与著作权虽然在作品范围、精神权利方面存在差异,但在财产权范围上基本一致),作为每个软件公司的商业秘密,并不对外开放。
但这一生态并不是所有的程序员都认同。早在20世纪80年代,当时的编程大神Richard Stallman、Bruce Perens等提出反对意见:源代码怎么能封闭起来卖钱?这会阻碍计算机科学的进步!什么?版权法(Copyright Law)允许?那我们就搞一个Copyleft Law,跟你Copyright反着来。
于是,“自由软件”(Free Software)诞生了,提倡“Copyleft Law”(开源法前传)精神,主张源代码公开并无偿地使用、研究、传播、修改——自由软件许可证(不同类型及版本的许可证存在差异)。
自由软件并不反对使用培训、技术支持等服务收费,著名的自由软件公司——小红帽(Red Hat)公司提供免费Linux系统但对操作指南订阅、技术支持保障,是大把大把的美元收费的[10]。
但Free Software的“free”不仅仅是“自由”的含义,还有“免费”的意思,容易让人产生误解,自由软件就是彻底的白拿白用别人的源代码。
况且自由软件规定只要在软件中采用了自由软件的代码,无论用多少,整个软件都必须跟着开源,与商业化界垒分明,这就在让WinTel生态下的靠卖代码讨生活的广大商业软件公司望而却步,不利于广泛发动群众,进行人民战争。
于是,自由软件的2.0版——“开源软件”(Open Source Software)诞生了,提倡“开源法”精神(开源法诞生了,开启了至今已达20多年的根据地初创、长征的艰苦卓绝历程,可能刚刚到达陕北),主张源代码是要开放的,但拿走代码改改后是否闭源,是否销售代码就随意了[11]——开源软件许可证(不同类型及版本的许可证存在差异,自由软件本质上也是开源软件,自由软件许可证是不允许代码闭源或者卖钱的)[12]。
“开源”诞生后,长期默默无闻或者说是主流WinTel的陪衬之一,小打小闹。但近年来,社会的网络化程度有快速深化的趋势,信息社会的早期景象已经呈现在人类面前。
信息是人的交往、交流的本质需求的内容与表现[13]。信息时代要求信息越来越透明,封闭的源代码,让用户始终处在黑暗而冰冷的空间,没有安全感,更不可能改进源代码。Google公司开源的Android智能手机操作系统的成功,就证明信息透明才能占得先机,在网络时代里商业致胜。
信息时代还要求大维度的协作与网络服务化。封闭的公司运作,一份份地收到版权权利金,已经不适应网络环境下SaaS及衍生的PaaS、IaaS的形势。
“开源”的理念显然是为信息时代而生的。站在21世纪20年代的门口,我们会发现“开源”软件已经各个软件领域崛起,商业软件巨人也纷纷赶上潮流:
2018年6月,微软宣布 75 亿美元收购 GitHub。
2018 年 10 月,IBM 以 340 亿美元收购Red Hat。
Facebook被称为全球最大的开源公司。
Google的开源项目达2000个以上。
现在流行的大数据、云计算的主要开发环境大多数是开源软件,例如 Hadoop、MongoDB、Openstack、Spark。
而支撑开源软件、开源硬件(我一直在想,开源的Linux与开源的硬件芯片—基于开源的RISC-V指令集,或许成为中国在21世纪20年代,实现核心超越的利器)、开源产业、开源文化崛起的,是开源理念、许可证、平台协议、社区合约等构成的一个体系:开源法。这个体系维系开源世界的秩序,为“开源”的不断进化与创新,去定义未来提供保障。
那么,为什么不制定一部《开源法》呢?
3 中间件:开源法当下的模型
既然是定义未来的,那么肯定也属于未来。对现今来说,开源法还处于初始状态,只是刚刚上线的测试版本,在当下的存在方式只能是中间件。制定一部《开源法》,迎来信息社会的开源时代,还需要时间。
WinTel体系的法律基础,是以著作权法为主的知识产权法,这是工业时代后期与信息社会早期的法律,赋予人们对其创造出来的信息—电影、软件等作品、发明等技术方案、产品设计—进行垄断的财产权。
微软公司为什么能一份份地销售Windows操作系统呢?因为Windows有《版权法》赋予的权利。
微软根据这一法定权利,有权要求用户每使用一份复制件都需要取得许可,而不是说用户付了费就取得了这个Windows复制件的版权所有权。对用户来讲,只是获得了微软的一个使用授权。
操作系统能收授权费,微软除了感谢《美国版权法》外,还得感谢PC时代的对手苹果公司。1983年的苹果公司起诉富兰克林公司一案[14],富兰克林公司未经许可就在其产品里复制使用了APPLE Ⅱ电脑的操作系统。
APPLE Ⅱ电脑在1981年的轰动与畅销,不亚于21世纪00年代末的iPhone智能手机与iPad平板电脑,富兰克林公司这么做为了让其计算机产品与APPLE Ⅱ的兼容。
富兰克林公司承认全盘复制了苹果公司的系统程序,但认为操作系统属于版权法上的过程或方法,用于控制计算机机器运行,属于版权法上“思想”范畴,而版权法只保护“思想”的“表达”。因此,这种复制不违反版权法。
美国联邦第三巡回上诉法院认为,版权法不保护功能方法,但苹果公司并未寻求对这种功能方法的垄断保护,而是要求保护功能方法的代码化表达。《美国版权法》第101条支持这种保护请求。
该案在软件的法律史上,是一个标志性的著名案件。法庭在该案里明确了操作系统程序可以成为版权法保护的对象,无论是源代码,还是目标代码。
其它类型的软件也同样一直在版权法保护之下,众多的软件技术成果还需要知识产权法保护,以此形成的软件财产交易、商业模式还在发挥着作用。
应该说,现在还不是废止版权法的时候,更不是全面废止包括版权法、专利法在内的知识产权法体系的时候。
虽然知识产权法与“开源”在理念上是冲突的,但知识产权法可以作为底层操作系统,而开源法作为中间件,将开源软件、开源社区与底层区隔开来,让所有的开源活动建立在开源法的规则之上。
中间件的主要构成,就是大家熟知的各种开源许可证。这些许可证承认法律规定的软件版权,但通过许可证的方式,将源代码的版权开放出来,允许在预设条款下免费使用、复制、修改、传播开源软件。这样,所有的开源活动都可以在中间件上有效地执行,而底层的法律依据即现行的知识产权法律制度。
即使现在只是作为中间件,开源法仍然是一个丰富且不断丰富的体系。不仅开源许可证越来越多(例如首张中国版开源许可证Mulan PSL v1已经推出),以满足各行业大量新增的开源业务需求。
而且多种多样的开源社区规则、数据仓库合同、代码托管协议也在不断参与进来,使得开源法体系完整,能够为开源在更多软件领域的扩展提供支持。
但我们也应注意到,开源法刚刚旭日初升,还远未达到普照大地的成熟度。Oracle公司收购了SUN公司,包括SUN公司已经开源的Solaris操作系统,但决定不再支持开源的Solaris,新的版本则重新商业运营。
Google的GFS、MapReduce、Bigtable,微软的Azure,还有VMware、AWS,这些网络时代的商业软件仍将长期存在,并在应用市场发挥主要功能。
4 开放、商业:开源法的原则
一个体系,例如一部法律,如果没有原则,就失去了灵魂。开源法的法律原则应该包括以下两项:开放原则与商业原则。
开放,既是开源的本意,也是开源法的原则。开源法的体系、规则、许可证、平台协议,都应以开放为核心价值目标。
网络化的程度与开放的程度是高度正相关的。谁的开放程度高,谁就能在信息社会拥有一席之地。
20世纪90年代,微软的Windows在战胜苹果,靠的就是开放与兼容策略(本文注:并非源代码开放)。Windows平台对兼容机厂商、广大应用软件开发商开放,造就了Windows技术、商业的大生态,因而成为主流的操作系统产品。
而苹果的Mac,当年打造的是一个封闭的软硬件系统,开放程度远不及Windows,虽然技术上占优,但失去了争当操作系统霸主的良机。但这种开放是属于PC时代的,并不属于开源法的原则意义上的开放。
在万物互联的网络时代新阶段,需要的是开源法的开放原则。这一原则,追求信息在更高维度的透明化,克服源代码封闭的弊端,汇集成千上万的技术人才,从而达到全球范围的大协作,叠续式推动更多更大的创新。开放原则,也为全球数以亿计的用户——个人或者机构——带来信息的自由与共享,提升信息消费的品质。这些在“软件吞噬世界”的信息社会,显得十分的重要。
作为开源法的主要组成部分——所有的开源许可证,都体现了开放的原则。OSI诠释了“开放”法律上的丰富含义,指出“开源”不仅仅是开放源代码,还包括允许免费再分发(Free Redistribution),不得歧视任一的个人或组织(No Discrimination Against Persons or Groups),开放许可应及于所有产品(License Must Not Be Specific to a Product)[15]等。
商业,是开源法另一项重要的原则。开放或者开源离不开商业,这来自一个简单的道理,人是要吃饭的,或者说人需要得到利益(只要是正当的)才能生存发展,“它是人类个别地或在集团社会中谋求得到满足的一种欲望或要求,因此人们在调整人与人之间的关系与安排人类行为时,必须考虑到这种欲望或要求”[16]。
如果有谁说,做开源就是做慈善,做贡献,不用食人间烟火,那只能建议去做神仙。商业原则也在开源法的重要组成部分—开源软件司法判例—上得到了充分的贯彻。
在2008年的Jacobsen v. Katzer案[17]里,美国联邦的上诉法院对开源法的商业原则进行了经典论述:传统上,版权人都是通过直接出售其版权标的(本文注:例如WinTel时代销售软件复制件的商业模式)来换钱。但不能因开源许可没有涉及金钱支付,就认定是非商业的。
法院指出,在开源许可证项下创造与发行的版权法保护的作品,虽然不直接收取授权费,但却具有超越授权费的巨大利益,包括商业利益。例如,程序创建者可以通过提供特定的免费组件,来获取软件的市场份额。
同样,一名程序员或软件公司可以通过孵化一个开源项目,来获得国内或国际上的商誉(本文注:知识产权法上,商誉本身就是一种法律保护的利益)。
法院确认,虽然开源许可证不谋求直接的经济利益,但商业或经济利益仍是其本质所在。
与自由、秩序一样,承认、鼓励、保障一个主体(个人或组织)去正当地追求物质利益,也是信息社会的美德。以法的原则、规则,去实现这种美德,是开源法的使命。因此,商业原则是开源法不可或缺的主要原则之一。
开源在网络时代,特别在云计算领域,实现了崛起,与找到SaaS商业模式是分不开的。这一模式有力地挑战了并将取代PC时代的一份份地卖目标码的商业软件模式。例如上文提到的Hadoop、MongoDB、Openstack、Spark。
5 社区的努力:小结
权威开源专家刘天栋先生讲:“Community over code(社区重于代码)。[18]”这也是著名的ASF的主旨之一。
开源社区,让开源法成为了现实的法律。
围绕不同的开源许可证(开源法的“部门法”或者“分则”),开源社区发展出了多种多样的模式、类型与规模。
比如国内比较知名的 OSCHINA、Gitee、开源社与 Linux 中国等开源社区。
还有,国际比较知名的 GitHub、OSI 以及各种开源相关的基金会。
开源法可以为项目在社区的运作及社区关系,提供法律基础。包括社区本身、社区上账号、项目、数据等作为虚拟财产[19]的归属认定及交易。
开源法定义未来,有赖于社区的努力。
【注释】
1、 我这个说法,大家应该都是认同的。信息科技已经深刻地改变了我们的思维、出行、工作以及生活方式。律师们也比以往更多地通过大数据来收集、分析裁判案例,更多地使用电子司法平台来收发案件信息,更多地通过终端或云端来交往、联络、查阅。据称,人工智能将取代律师的工作,至少将取代大部分的律师工作。作为一名小律师,我有点焦虑哈。
2、《物联网:未来已来》,物联网智库 著,机械工业出版社2015年12月。
3、《重新定义未来:区块链定义金融、商业、文化与我们的生活方式!》,黄震 著,北京联合出版公司2018年7月。
4、 《后谷歌时代:大数据的衰落及区块链经济的崛起》,[美]乔治·吉尔德(George Gilder)著,现代出版社2018年9月。
5、《智能时代:大数据与智能革命重新定义未来》,[美]吴军 著,中信出版集团2016年8月。
6、《人工智能时代:人机共生下财富、工作与思维的大未来》,[美]杰瑞·卡普兰(Jerry Kaplan) 著,浙江人民出版社2016年4月。
7、(2017)浙8601民初4034号民事判决书。
8、《自然语言处理研究报告》https://gitbook.cn/gitchat/geekbook/5b988b4eca991065
4c0823f5/topic/5b993b7cca9910654c08484f,2019年11月30日最近一次访问。
9、语出马克·安德森(Marc Andreessen)。
10、不是广告哈!https://www.redhat.com/en/store,2019年11月30日最近一次访问。
11、 什么是“开源软件”?什么是“开源软件许可证”?可以参考我写的拙文《中国首张开源许可证“木兰”的法律评论》,开源社、开源中国等知名开源媒体上均有登载。
12、不同“开源软件许可证”的差别在哪里?可以参考我写的拙文《中国首张开源许可证“木兰”的法律评论》,开源社、开源中国等知名开源媒体上均有登载。
13、可以参考我2008年写的拙著《信息法讲义》第一章概论,华东政法大学教材。
14、https://openjurist.org/714/f2d/1240/apple-computer-inc-v-franklin-Computer
-corporation,2019年11月30日最近一次访问。
15、 https://opensource.org/osd,2019年12月2日最近一次访问。
16、《通过法律的社会控制-法律的任务》,[美]庞德 著,商务印书馆1984年4月第1版。
17、http://www.cafc.uscourts.gov/sites/default/files/opinions-orders/08-1001.pdf
2019年12月2日最近一次访问。
18、 刘天栋先生是开源社联合创始人兼理事长,ASF全球七百多名正式成员之一。
19、中国《民法总则》第127条规定“法律对数据、网络虚拟财产的保护有规定的,依照其规定。”这就为可能的开源财产立法,提供了充分的法律依据。